﻿using AjaxControlToolkit;
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;

public partial class UserControls_Fecha : GenericUserControl
{
    #region Controles

    public string FechaOVacio = "((0[1-9]|[12][0-9]|3[01])[/](0[1-9]|1[012])[/](19|20)\\d\\d)|([_][_][/][_][_][/][_][_][_][_])";
    public string FechaSiOSi = "(0[1-9]|[12][0-9]|3[01])[/](0[1-9]|1[012])[/](19|20)\\d\\d";
    public DateTime FechaNula = Convert.ToDateTime("01/01/1801 0:00:00");
    public string StringNulo = "__/__/____";

    public MaskedEditValidator MevFecha
    {
        get { return mevFecha; }
        set { mevFecha = value; }
    }

    private bool enabled;
    public bool Enabled
    {
        get { return enabled; }
        set
        {
            enabled = value;
            txtFecha.Enabled = enabled;
            mevFecha.Enabled = enabled;
            imgFecha.Visible = enabled;
        }
    }

    #endregion

    #region Eventos

    #region Page_Load
    /// <Summary>
    /// Se llama cada vez que se carga el control
    /// 
    /// Moficado por: MDT  Fecha: 10/07/2008
    /// Motivo del Cambio:
    /// 
    /// </Summary>
    protected void Page_Load(object sender, EventArgs e)
    {
        try
        {
            SetearCultura();
            SetearConexion();
        }
        catch (Exception ex) { throw ex; }
    }
    #endregion

    #endregion

    #region Métodos

    #region GetFecha
    /// <Summary>
    /// Obtiene la fecha
    /// </Summary>
    public DateTime GetFecha()
    {
        try
        {
            if (txtFecha.Text.Equals(StringNulo))
            {
                return FechaNula;
            }
            else
            {
                return Convert.ToDateTime(txtFecha.Text);
            }
        }
        catch (Exception ex) { throw ex; }
    }
    #endregion

    #region SetFecha
    /// <Summary>
    /// Setea la fecha
    /// </Summary>
    public void SetFecha(DateTime? fecha)
    {
        try
        {
            if (fecha != null)
            {
                txtFecha.Text = Convert.ToString(fecha).Remove(11);
            }
            else
            {
                txtFecha.Text = StringNulo;
            }
        }
        catch (Exception ex) { throw ex; }
    }
    #endregion

    #endregion
}

